Copyright ゥ 1994 by Nick Triantos. All rights reserved.
This program is free, and is in the public domain. You're free to do what you like with
the included source code, but don't blame me if you do any damage to yourself or
your computer because of it!
What is it?
SafeLauncher is a tiny application (6k) that will launch another app after making some system checks for you. Specifically, SafeLauncher will optionally check one or more of the following:
・ Verify that 32-bit addressing is ON
・ Verify that 32-bit addressing is OFF
・ Verify that Quadra caches are OFF
・ Set the main screen depth for you
So what?
I still have a big addiction to lots of the older games that haven't been made 32-bit clean or don't work with the 68040's cache. By launching the app. from this program, I am sure that the settings I need are correct for any of those older games. For example, for "Beyond Dark Castle" (by Silicon Beach), the main monitor needs to be in Black & White mode, and 32-bit addressing must be off. Within about 10 seconds with ResEdit, you can configure SafeLauncher to ensure that these settings are true before Beyond Dark Castle is automatically launched.
How do I work this?
To configure SafeLauncher, your first step is to figure out which settings you need for a given application. If you have applications that are crashing under System 7.1, it might be because of 32-bit addressing being ON, or because your 68040's (if you've got one) caches are ON. Try turning them off, restarting, and seeing if the crashing goes away. If it does, you've found the problem. There are also some apps that tell you that you must switch to a certain number of colors, but then just exit without giving you the option to switch to the depth they need. SafeLauncher can set the depth ahead of time.
Make a copy of SafeLauncher in the directory where the troublesome application is located.
Next, launch ResEdit. (If you don't have ResEdit, you can get it free from Apple. If you've never heard of ResEdit or you don't know how to use it, you probably shouldn't be mucking around with SafeLauncher, so continue at your own risk!) Open the copy of SafeLauncher you made. Open 'STR ' #128, and delete what's there. Type in the filename of the application EXACTLY as it appears in the Finder. This includes any trademark symbols, spaces, etc. To be safe, you can copy the filename from the Finder and paste it into ResEdit. Close the 'STR ' resource.
Open the 'LPrp' (Launch Properties) #0 resource. In here, you can change the following switches:
Check for 32-bit addressing:
Set to '1' if an application REQUIRES 32-bit addressing.
Check for 24-bit addressing:
Set to '1' if an application crashes with 32-bit addressing.
Check for QuadraCache to be off:
Set to '1' if an application crashes with the Quadra's caches ON.
Set main monitor depth:
Set to '1' if you want the monitor to change depth when the app launches
If you want the main monitor depth to be set, be sure you also change the 'Depth' parameter at the bottom of the 'LPrp' resource to the bit-depth you need. Use 1 for black and white, 4 for 16-colors, 8 for 256-colors, etc.
Save your changes in ResEdit, and quit. You should now be ready to launch SafeLauncher to see if it launches your application properly.
Some final usage notes:
SafeLauncher requires System 7. In addition, it needs only about 6k of disk space, and 40k to run.
If SafeLauncher is used to set the monitor's bit depth, note that the original depth will not be restored when your application quits. This is because SafeLauncher exits immediately after it launches your chosen application.
For programmers only:
I have supplied what little source code this app needs, as well as the project files for MetroWerks CodeWarrior (DR/4), and Symantec's THINK C 6.0. The tests are all quite simple, and there's no huge magic within the source, but you may find some of the code (such as the smalltext user item in the dialog) to be of use. If you want to use any of the code, feel free. If you want to make improvements or changes to this application, please don't re-distribute it without contacting me first. It might get very confusing out there if there are several people releasing versions of this app.
To contact me, the author:
I can be reached at any of the following addresses:
Internet: triantos@netcom.com (preferred)
America On-Line: Triantos
E-World: triantos@netcom.com
Snail-mail:
Nick Triantos
778 Ovation Ct.
San Jose, CA 95134
Comments, postcards, questions, etc. are all welcome.